Specify which filename is causing an error if the filename is a
authorDavid Kimdon <dwhedon@gordian.com>
Tue, 9 Dec 2025 08:47:23 +0000 (09:47 +0100)
committerMatthias Klose <doko@debian.org>
Tue, 9 Dec 2025 08:47:23 +0000 (09:47 +0100)
directory. (#45832)

Gbp-Pq: Name 006_better_file_error.patch

bfd/opncls.c

index 47a74512efc883de7eac51e5b37b07fd823368fb..c77d2fdafa22ff0525c48a848d623daebaa6f5fc 100644 (file)
@@ -234,6 +234,13 @@ bfd_fopen (const char *filename, const char *target, const char *mode, int fd)
 {
   bfd *nbfd;
   const bfd_target *target_vec;
+  struct stat s;
+
+  if (stat (filename, &s) == 0)
+    if (S_ISDIR(s.st_mode)) {
+      bfd_set_error (bfd_error_file_not_recognized);
+      return NULL;
+    }
 
   nbfd = _bfd_new_bfd ();
   if (nbfd == NULL)